| автор перевода - Штрек - flash-club.ru | Предыдущая | Следующая | Оглавление |
Flash Player 5.
Во Flash 4, оператор (&) использовался для объединения строк. Во Flash 5, оператор (&) является оператором "побитовое И" и для объединения строк, нужно использовать оператор (add) или оператор (+). Файлы Flash 4, использующие оператор (&), автоматически обновляются для использования (add), во время переноса в рабочую среду Flash 5.
expression1& expression2
Нет.
32-битное целое число.
Оператор (побитовый), конвертирует expression1 и expression2
в 32-битные целые числа, и выполняет операцию "булевого И" над каждым
битом аргумента целого числа.. Числа с плавающей запятой преобразуются в целое
число, путём отбрасывания десятичной части. В результате мы имеем новое беззнаковое
целое число.
Положительные целые числа конвертируются в 16-битное беззнаковое целое число, с максимальным значением 4294967295 или 0xFFFFFFFF; значения большие, чем максимум, отбрасывают лишние значащие цифры до конвертации. Отрицательные целые числа конвертируются в 16-битное беззнаковое целое число, с минимальным значением -2147483648 или 0x800000000; числа имеющие значение меньшие, чем минимум, отбрасывают лишние значащие цифры до конвертации.
Возвращаемое значение, интерпретируется, как двоичное число, имеющее значение в интервале от -2147483648 до 2147483647.
Для дополнительной информации, смотрите "Старшинство и ассоциативность операторов" в Использовании ActionScript во Флэш .
В следующем примере, числа сравниваются побитово и возвращается 1, только если оба бита, в одинаковых позициях, имеют значение 1. В этом скрипте определяется 13 (бинарное 1101) и 11 (бинарное 1011), с возвращением 1, в случае равенства, в одинаковых позициях, битов единице :
var insert:Number = 13; var update:Number = 11; trace(insert & update); // выводится : 9 (или 1001 бинарное)
Для чисел 13 и 11 результат - 9 потому, что только первая и последняя позиции, у обоих чисел, имеют значение 1.
Пример, демонстрирующий применение оператора & (побитовое И):
trace(0xFFFFFFFF); // 4294967295 trace(0xFFFFFFFF & 0xFFFFFFFF); // -1 trace(0xFFFFFFFF & -1); // -1 trace(4294967295 & -1); // -1 trace(4294967295 & 4294967295); // -1
&= (присваивание побитового И),
^ (побитовое исключающее ИЛИ),
^= (побитовое исключающее ИЛИ с присвоением),
| (побитовое ИЛИ), |=
(присваивание побитового ИЛИ), ~
(побитовое НЕТ)
| Посмотреть комментарии LiveDocs | Предыдущая | Следующая | Оглавление | |